package cn.highset.modules.base.service;

import cn.highset.base.HighsetBaseService;
import cn.highset.common.vo.SearchVo;
import cn.highset.modules.base.entity.ProductType;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 * 产品类别接口
 *
 * @author Victor
 */
public interface ProductTypeService extends HighsetBaseService<ProductType, String> {

    /**
     * 多条件分页获取
     *
     * @param productType
     * @param searchVo
     * @param pageable
     * @return
     */
    Page<ProductType> findByCondition(ProductType productType, SearchVo searchVo, Pageable pageable);

    /**
     * 通过父id获取 升序
     *
     * @param parentId
     * @return
     */
    List<ProductType> findByParentIdOrderBySortOrder(String parentId);


    /**
     * 类别中文名称模糊搜索 升序
     *
     * @param nameCn
     * @return
     */
    List<ProductType> findByNameCnLikeOrderBySortOrder(String nameCn);

    /**
     * 设置类别信息
     *
     * @param list
     * @return
     */
    List<ProductType> setInfo(List<ProductType> list);
}
